Magnifying the text of a link while still retaining browser function in the magnified display

ABSTRACT

A web browser magnifies the content of the whole page in memory and displays the relevant portion in a magnifier with hyperlinks. The web browser then maps the magnified display to the original document. Thus, manipulation of the mouse in the magnified display may result in an action with respect to the original document. The user may then select a link for navigation within the magnified display. Alternatively, the web browser may analyze the original web page and construct magnifier contents on the basis of either the document object model, extensible markup language (XML), or hypertext markup language (HTML) representation of the magnified portion.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates to an improved data processing system and,in particular, to a method and apparatus for managing world wide webdocuments in a data processing system. Still more particularly, thepresent invention provides a method, apparatus, and program formagnifying the text of a link while retaining browser functionality inthe magnified display.

2. Description of Related Art

The worldwide network of computers commonly known as the “Internet” hasseen explosive growth in the last several years. Mainly, this growth hasbeen fueled by the introduction and widespread use of so-called “webbrowsers,” which enable simple graphical user interface-based access tonetwork servers, which support documents formatted as so-called “webpages.” These web pages are versatile and customized by authors. Forexample, web pages may mix text and graphic images. A web page also mayinclude fonts of varying sizes.

A browser is a program that is executed on a graphical user interface(GUI). The browser allows a user to seamlessly load documents from theInternet and display them by means of the GUI. These documents arecommonly formatted using markup language protocols, such as hypertextmarkup language (HTML). Portions of text and images within a documentare delimited by indicators, which affect the format for display. InHTML documents, the indicators are referred to as tags. Tags may includelinks, also referred to as “hyperlinks,” to other pages. The browsergives some means of viewing the contents of web pages (or nodes) and ofnavigating from one web page to another in response to selection of thelinks.

The versatility and customization of web pages, however, are sometimesan impediment to users. Some web pages may be designed with small fontsto accommodate more content. For example, a “portal” may be designed toprovide access to information and services, such as news, shopping, andstock quotes, from a wide variety of sources. This results in a very“busy” page with small fonts and many links to navigate.

Visually impaired users may find it difficult to locate links indocuments with small print. Other users may have difficulty with finemotor movements and cannot manipulate a mouse pointer with accuracy,thus making it difficult to select links in a crowded portion of thepage. Magnifiers exist that allow a user to select a portion of a webpage and generate a magnified display of that portion. However, after alink is located in the magnified display, the user must return to thebrowser to locate and select the link. Therefore, a user with visualimpairment or difficulty with fine motor movements still faces theproblem of locating and selecting the link in the original display.

Thus, it would be advantageous to provide a magnified display whileretaining the functionality of the web browser.

SUMMARY OF THE INVENTION

The present invention provides a web browser that magnifies the contentof the whole page in memory and displays the relevant portion in amagnifier with hyperlinks. The web browser then maps the magnifieddisplay to the original document. Thus, manipulation of the mouse in themagnified display may result in an action with respect to the originaldocument. For example, the user may select a portion of text to becopied and pasted into another application. The user may also select alink for navigation within the magnified display. Alternatively, the webbrowser may analyze the original web page and construct magnifiercontents on the basis of either the document object model, extensiblemarkup language (XML), or hypertext markup language (HTML)representation of the magnified portion.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. The invention itself, however, as well asa preferred mode of use, further objectives and advantages thereof, willbest be understood by reference to the following detailed description ofan illustrative embodiment when read in conjunction with theaccompanying drawings, wherein:

FIG. 1 depicts a pictorial representation of a network of dataprocessing systems in which the present invention may be implemented;

FIG. 2 is a block diagram of a data processing system that may beimplemented as a server in accordance with a preferred embodiment of thepresent invention;

FIG. 3 is a block diagram illustrating a data processing system in whichthe present invention may be implemented;

FIG. 4 is an example of a screen of display of a browser window inaccordance with a preferred embodiment of the present invention;

FIG. 5 is an example screen of display of a browser window with amagnifier in accordance with a preferred embodiment of the presentinvention;

FIG. 6 is a block diagram of a browser program in accordance with apreferred embodiment of the present invention;

FIG. 7 is a block diagram of a memory configuration for a browser with amagnifier in accordance with a preferred embodiment of the presentinvention;

FIG. 8 is an example document object model for a document with amagnified portion in accordance with a preferred embodiment of thepresent invention;

FIG. 9 is a flowchart illustrating the operation of a web browser thatmaps a magnified display to the original document in accordance with apreferred embodiment of the present invention; and

FIG. 10 is a flowchart illustrating the operation of a web browser thatgenerates a magnified display using the document object model of theoriginal document in accordance with a preferred embodiment of thepresent invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With reference now to the figures, FIG. 1 depicts a pictorialrepresentation of a network of data processing systems in which thepresent invention may be implemented. Network data processing system 100is a network of computers in which the present invention may beimplemented. Network data processing system 100 contains a network 102,which is the medium used to provide communications links between variousdevices and computers connected together within network data processingsystem 100. Network 102 may include connections, such as wire, wirelesscommunication links, or fiber optic cables.

In the depicted example, a server 104 is connected to network 102 alongwith storage unit 106. In addition, clients 108, 110, and 112 also areconnected to network 102. These clients 108, 110, and 112 may be, forexample, personal computers or network computers. In the depictedexample, server 104 provides data, such as boot files, operating systemimages, and applications to clients 108-112. Clients 108, 110, and 112are clients to server 104. Network data processing system 100 mayinclude additional servers, clients, and other devices not shown. In thedepicted example, network data processing system 100 is the Internetwith network 102 representing a worldwide collection of networks andgateways that use the TCP/IP suite of protocols to communicate with oneanother. At the heart of the Internet is a backbone of high-speed datacommunication lines between major nodes or host computers, consisting ofthousands of commercial, government, educational and other computersystems that route data and messages. Of course, network data processingsystem 100 also may be implemented as a number of different types ofnetworks, such as for example, an intranet, a local area network (LAN),or a wide area network (WAN). FIG. 1 is intended as an example, and notas an architectural limitation for the present invention.

Referring to FIG. 2, a block diagram of a data processing system thatmay be implemented as a server, such as server 104 in FIG. 1, isdepicted in accordance with a preferred embodiment of the presentinvention. Data processing system 200 may be a symmetric multiprocessor(SMP) system including a plurality of processors 202 and 204 connectedto system bus 206. Alternatively, a single processor system may beemployed. Also connected to system bus 206 is memory controller/cache208, which provides an interface to local memory 209. I/O bus bridge 210is connected to system bus 206 and provides an interface to I/O bus 212.Memory controller/cache 208 and I/O bus bridge 210 may be integrated asdepicted.

Peripheral component interconnect (PCI) bus bridge 214 connected to I/Obus 212 provides an interface to PCI local bus 216. A number of modemsmay be connected to PCI bus 216. Typical PCI bus implementations willsupport four PCI expansion slots or add-in connectors. Communicationslinks to network computers 108-112 in FIG. 1 may be provided throughmodem 218 and network adapter 220 connected to PCI local bus 216 throughadd-in boards.

Additional PCI bus bridges 222 and 224 provide interfaces for additionalPCI buses 226 and 228, from which additional modems or network adaptersmay be supported. In this manner, data processing system 200 allowsconnections to multiple network computers. A memory-mapped graphicsadapter 230 and hard disk 232 may also be connected to I/O bus 212 asdepicted, either directly or indirectly.

Those of ordinary skill in the art will appreciate that the hardwaredepicted in FIG. 2 may vary. For example, other peripheral devices, suchas optical disk drives and the like, also may be used in addition to orin place of the hardware depicted. The depicted example is not meant toimply architectural limitations with respect to the present invention.

The data processing system depicted in FIG. 2 may be, for example, anIBM RISC/System 6000 system, a product of International BusinessMachines Corporation in Armonk, N.Y., running the Advanced InteractiveExecutive (AIX) operating system.

With reference now to FIG. 3, a block diagram illustrating a dataprocessing system is depicted in which the present invention may beimplemented. Data processing system 300 is an example of a clientcomputer. Data processing system 300 employs a peripheral componentinterconnect (PCI) local bus architecture. Although the depicted exampleemploys a PCI bus, other bus architectures such as Accelerated GraphicsPort (AGP) and Industry Standard Architecture (ISA) may be used.Processor 302 and main memory 304 are connected to PCI local bus 306through PCI bridge 308. PCI bridge 308 also may include an integratedmemory controller and cache memory for processor 302. Additionalconnections to PCI local bus 306 may be made through direct componentinterconnection or through add-in boards. In the depicted example, localarea network (LAN) adapter 310, SCSI host bus adapter 312, and expansionbus interface 314 are connected to PCI local bus 306 by direct componentconnection. In contrast, audio adapter 316, graphics adapter 318, andaudio/video adapter 319 are connected to PCI local bus 306 by add-inboards inserted into expansion slots. Expansion bus interface 314provides a connection for a keyboard and mouse adapter 320, modem 322,and additional memory 324. Small computer system interface (SCSI) hostbus adapter 312 provides a connection for hard disk drive 326, tapedrive 328, and CD-ROM drive 330. Typical PCI local bus implementationswill support three or four PCI expansion slots or add-in connectors.

An operating system runs on processor 302 and is used to coordinate andprovide control of various components within data processing system 300in FIG. 3. The operating system may be a commercially availableoperating system, such as Windows 2000, which is available fromMicrosoft Corporation. An object oriented programming system such asJava may run in conjunction with the operating system and provide callsto the operating system from Java programs or applications executing ondata processing system 300. “Java” is a trademark of Sun Microsystems,Inc. Instructions for the operating system, the object-orientedoperating system, and applications or programs are located on storagedevices, such as hard disk drive 326, and may be loaded into main memory304 for execution by processor 302.

Those of ordinary skill in the art will appreciate that the hardware inFIG. 3 may vary depending on the implementation. Other internal hardwareor peripheral devices, such as flash ROM (or equivalent nonvolatilememory) or optical disk drives and the like, may be used in addition toor in place of the hardware depicted in FIG. 3. Also, the processes ofthe present invention may be applied to a multiprocessor data processingsystem.

As another example, data processing system 300 may be a stand-alonesystem configured to be bootable without relying on some type of networkcommunication interface, whether or not data processing system 300comprises some type of network communication interface. As a furtherexample, data processing system 300 may be a Personal Digital Assistant(PDA) device, which is configured with ROM and/or flash ROM in order toprovide non-volatile memory for storing operating system files and/oruser-generated data.

The depicted example in FIG. 3 and above-described examples are notmeant to imply architectural limitations. For example, data processingsystem 300 also may be a notebook computer or hand held computer inaddition to taking the form of a PDA. Data processing system 300 alsomay be a kiosk or a Web appliance.

In accordance with a preferred embodiment of the present invention a webbrowser running on a client, such as clients 108, 110, 112 in FIG. 1magnifies the content of the whole page in memory and displays therelevant portion in a magnifier with hyperlinks. The web browser thenmaps the magnified display to the display space of the originaldocument. Thus, manipulation of the mouse in the magnified display mayresult in an action with respect to the original document. For example,the user may select a portion of text to be copied and pasted intoanother application. The user may also select a link for navigationwithin the magnified display. Alternatively, the web browser may analyzethe original web page and construct magnifier contents on the basis ofeither the document object model, extensible markup language (XML), orhypertext markup language (HTML) representation of the magnifiedportion.

An example of a screen of display of a browser window is shown in FIG. 4in accordance with a preferred embodiment of the present invention. Thescreen comprises window 400, including a title bar 402, which maydisplay the name of the application program. Title bar 402 also includesa control box 404, which produces a drop-down menu (not shown) whenselected with the mouse, and “minimize” 406, “maximize” or “restore”408, and “close” 410 buttons. The “minimize” and “maximize” or “restore”buttons 406 and 408 determine the manner in which the program window isdisplayed. In this example, the “close” button 410 produces an “exit”command when selected. The drop-down menu produced by selecting controlbox 404 includes commands corresponding to “minimize,” “maximize” or“restore,” and “close” buttons, as well as “move” and “resize” commands.

Browser window 400 also includes a menu bar 412. Menus to be selectedfrom menu bar 412 may include “File,” “Edit,” “View,” “Insert,”“Format,” “Tools,” “Window,” and “Help.” However, menu bar 412 mayinclude fewer or more menus, as understood by a person of ordinary skillin the art. The browser window also includes toolbar 414 with buttonsused to navigate web pages. The buttons may include, but are not limitedto, “Back,” “Forward,” “Stop,” “Refresh,” “Home,” and “Print.”

The browser window includes a display area 416 in which the contents ofa document are displayed. The document may be retrieved from a server,such as server 104 in FIG. 1. The document may also be retrieved fromanother location, such as a hard disk in the client computer. As seen inFIG. 4, a web page may contain many links displayed in a small font.Typically, links are displayed with underlining; however, othermechanisms may be used to differentiate hyperlinks within a document.For example, links may be displayed in a preselected color or the mousecursor may change when moved over a hyperlink. Clusters of small linksmay present problems for users with visual impairment or difficulty withfine motor movements.

With reference now to FIG. 5, an example screen of display of a browserwindow with a magnifier is shown in accordance with a preferredembodiment of the present invention. The screen comprises window 500,including display area 516. The screen also includes a magnifier window550 that provides a magnified display of a selected portion of theoriginal document. In accordance with a preferred embodiment of thepresent invention, the magnifier window retains browser functionalityfor the magnified portion.

Turning next to FIG. 6, a block diagram of a browser program is depictedin accordance with a preferred embodiment of the present invention. Abrowser is an application used to navigate or view information or datain a distributed database, such as the Internet or the World Wide Web.

In this example, browser 600 includes a user interface 602, which is agraphical user interface (GUI) that allows the user to interface orcommunicate with browser 600. This interface provides for selection ofvarious functions through menus 604 and allows for navigation throughnavigation 606. For example, menu 604 may allow a user to performvarious functions, such as saving a file, opening a new window,displaying a history, and entering a URL. Navigation 606 allows for auser to navigate various pages and to select web sites for viewing. Forexample, navigation 606 may allow a user to see a previous page or asubsequent page relative to the present page. Preferences may be setthrough preferences 608.

In accordance with a preferred embodiment of the present invention, userinterface 602 provides a magnified display through magnifier 650. Themagnifier may be invoked through commands or menus, such as aright-click menu or menus 412 in FIG. 4. Also, toolbar 414 in FIG. 4 mayinclude a button that may be selected to invoke the magnifier.

Communications 610 is the mechanism with which browser 600 receivesdocuments and other resources from a network such as the Internet.Further, communications 610 is used to send or upload documents andresources onto a network. In the depicted example, communication 610uses hypertext transfer protocol (HTTP). Other protocols may be useddepending on the implementation. Documents that are received by browser600 are processed by language interpretation 612, which includes an HTMLunit 614 and a JavaScript unit 616. Language interpretation 612 willprocess a document for presentation on graphical display 618. Inparticular, HTML statements are processed by HTML unit 614 forpresentation while JavaScript statements are processed by JavaScriptunit 616.

Graphical display 618 includes layout unit 620, rendering unit 622, andwindow management 624. These units are involved in presenting web pagesto a user based on results from language interpretation 612. Magnifier650 communicates with graphical display 618 to render the magnifiedportion of the document in the magnified display.

Browser 600 is presented as an example of a browser program in which thepresent invention may be embodied. Browser 600 is not meant to implyarchitectural limitations to the present invention. Presently availablebrowsers may include additional functions not shown or may omitfunctions shown in browser 600. A browser may be any application that isused to search for and display content on a distributed data processingsystem. Browser 600 make be implemented using know browser applications,such Netscape Navigator or Microsoft Internet Explorer. NetscapeNavigator is available from Netscape Communications Corporation whileMicrosoft Internet Explorer is available from Microsoft Corporation.

With reference now to FIG. 7, a block diagram of a memory configurationfor a browser with a magnifier is shown in accordance with a preferredembodiment of the present invention. Web browser 710 displays a documentand magnifier 712 provides a magnified display of a selected portion ofthe document. Memory 720 includes storage 722 for regular web browserand associated data representation and storage 724 for web browserdisplay memory. Magnifier 712 displays a selected portion 725 fromdisplay memory 724.

Mapping 730 provides a map between the magnified display area and acorresponding display area for the original document. This magnifiedarea may be generated as a “bit-blit”—reading a small area from thevideo RAM pixel-by-pixel and repopulating the adjacent cells of theexpanded field using whatever magnification factor is desired. Forexample, the magnifier may create an expanded field with a 1:4 factor,or 1 pixel repopulated to 4 pixels, for a 2× enlargement. Thus, theexisting RAM may support the rendering of the magnified display andmapping 730 maps mouse events in the magnified display to thecorresponding coordinates in the “normal” display space.

Mapping 730 may also provide an imagemap between the displayed portionin the magnifier with corresponding data in the original document fromdata representation 722. An imagemap is a single picture image that islogically separated into areas, each of which is used to select adifferent option or display a different message when clicked. Imagemapsare widely used on the Web to provide a navigation bar to link to othertopics or pages on a site. In accordance with a preferred embodiment ofthe present invention, the magnified display is mapped to the originaldocument to form an imagemap with areas used to select optionscorresponding to the original document.

In an alternative embodiment of the present invention, the web browsermay analyze the original web page and construct magnifier contents onthe basis of either the document object model (DOM), extensible markuplanguage (XML), or hypertext markup language (HTML) representation ofthe magnified portion. DOM is a common application programming interface(API) for accessing HTML and XML documents from a Web browser. DOM wasdeveloped to formalize Dynamic HTML, which allows animation, interactionand dynamic updating of Web pages. DOM provides a language andplatform-neutral object model for Web pages, but because it deals withdocument structures in general, DOM may also be used by any applicationthat accesses documents.

With reference to FIG. 8, an example document object model for adocument with a magnified portion is illustrated in accordance with apreferred embodiment of the present invention. Document object model 800comprises a tree structure of nodes representing the document. Each nodehas a number of attributes. For example, a node may be “text” and theattributes may be “fontsize,” “fontcolor,” and “textstring.”

DOM 800 includes node 802 with subnodes 804 and 806. Nodes 802, 804, 806may represent a magnified portion 810 of a document. When a portion ofthe document is selected for magnified display, the magnifier may begenerated based on the corresponding portion of the DOM. For example, ifnode 806 is a “text” node and the original attribute values are 12-pointfont, red, and text “News,” the values may be adjusted to 24-point font,red, and text “News” for the magnified display. Thus, the magnifiedportion presents a portion of the tree structure and retains fullbrowser functionality. The DOM illustrated in FIG. 8 is exemplary andthe present invention may be implemented in a variety of ways, as willbe readily apparent to a person of ordinary skill in the art.

With reference to FIG. 9, a flowchart illustrating the operation of aweb browser that maps a magnified display to the original document isshown in accordance with a preferred embodiment of the presentinvention. The process begins and a determination is made as to whetheran exit condition exists (step 902). An exit condition may exist when auser closes the browser window or exits through a menu command. If anexit condition exists, the process ends.

If an exit condition does not exist in step 902, a determination is madeas to whether a portion is selected for magnification (step 904). If aportion is not selected for magnification, a determination is made as towhether another action is requested through the user interface (step906). If another action is requested, the process performs the otherbrowser action (step 908) and returns to step 902 to determine whetheran exit condition exists. An action in step 908 may be selection of alink within the normal browser display, in which case the processretrieves and displays a new document. If another action is notrequested in step 908, the process returns to step 902 to determinewhether an exit condition exists.

Returning to step 904, if a portion of the document is selected formagnification, the process magnifies the selected portion from displaymemory (step 910) and maps the magnified portion to the originaldocument content (step 912). Next, a determination is made as to whetheran action is requested within the magnifier interface (step 914). If anaction is requested within the magnifier interface, a determination ismade as to whether the action is a selection of a link (step 916). If alink is not selected, the process performs the action with respect tothe original document and returns to step 914 to determine whether anaction is requested within the magnifier interface.

If the action is the selection of a link in step 916, the processretrieves and displays the new document (step 920), closes the magnifierdisplay (step 922), and returns to step 902 to determine whether an exitcondition exists.

Returning to step 914, if an action is not requested in the magnifierinterface, a determination is made as to whether a request to close themagnifier is received (step 924). If a request to close the magnifier isreceived, the process closes the magnifier (step 922) and returns tostep 902 to determine whether an exit condition exists. If a request toclose the magnifier is not received in step 924, the process returns tostep 914 to determine whether an action is requested in the magnifierinterface.

Turning now to FIG. 10, a flowchart illustrating the operation of a webbrowser that generates a magnified display using the document objectmodel of the original document is shown in accordance with a preferredembodiment of the present invention. The process begins and adetermination is made as to whether an exit condition exists (step1002). An exit condition may exist when a user closes the browser windowor exits through a menu command. If an exit condition exists, theprocess ends.

If an exit condition does not exist in step 1002, a determination ismade as to whether a portion is selected for magnification (step 1004).If a portion is not selected for magnification, a determination is madeas to whether another action is requested through the user interface(step 1006). If another action is requested, the process performs theother browser action (step 1008) and returns to step 1002 to determinewhether an exit condition exists. An action in step 1008 may beselection of a link within the normal browser display, in which case theprocess retrieves and displays a new document. If another action is notrequested in step 1008, the process returns to step 1002 to determinewhether an exit condition exists.

Returning to step 1004, if a portion of the document is selected formagnification, the process creates the magnified display using thedocument object model of the original document (step 1010). Next, adetermination is made as to whether an action is requested within themagnifier interface (step 1012). If an action is requested within themagnifier interface, a determination is made as to whether the action isa selection of a link (step 1014). If a link is not selected, theprocess performs the action with respect to the original document andreturns to step 1012 to determine whether an action is requested withinthe magnifier interface.

If the action is the selection of a link in step 1014, the processretrieves and displays the new document (step 1018), closes themagnifier display (step 1020), and returns to step 1002 to determinewhether an exit condition exists.

Returning to step 1012, if an action is not requested in the magnifierinterface, a determination is made as to whether a request to close themagnifier is received (step 1022). If a request to close the magnifieris received, the process closes the magnifier (step 1020) and returns tostep 1002 to determine whether an exit condition exists. If a request toclose the magnifier is not received in step 1022, the process returns tostep 1012 to determine whether an action is requested in the magnifierinterface.

Thus, the present invention solves the disadvantages of the prior art byproviding a web browser that magnifies the content of the whole page inmemory and displays the relevant portion in a magnifier with hyperlinks.The web browser maps the magnified display to the original document.Thus, manipulation of the mouse in the magnified display may result inan action with respect to the original document. The user may alsoselect a link for navigation within the magnified display.Alternatively, the web browser may analyze the original web page andconstruct magnifier contents on the basis of either the document objectmodel, XML, or HTML representation of the magnified portion. Thus, theuser need not repeatedly magnify the document and return to the originaldisplay to select links. Furthermore, changing font sizes within theentirety of the original display to enlarge text may adversely effectthe layout of the page. Using the present invention, the user may selectlinks or perform other browser functions within the magnified display.

It is important to note that while the present invention has beendescribed in the context of a fully functioning data processing system,those of ordinary skill in the art will appreciate that the processes ofthe present invention are capable of being distributed in the form of acomputer readable medium of instructions and a variety of forms and thatthe present invention applies equally regardless of the particular typeof signal bearing media actually used to carry out the distribution.Examples of computer readable media include recordable-type media, suchas a floppy disk, a hard disk drive, a RAM, CD-ROMs, DVD-ROMs, andtransmission-type media, such as digital and analog communicationslinks, wired or wireless communications links using transmission forms,such as, for example, radio frequency and light wave transmissions. Thecomputer readable media may take the form of coded formats that aredecoded for actual use in a particular data processing system.

The description of the present invention has been presented for purposesof illustration and description, and is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the art. Theembodiment was chosen and described in order to best explain theprinciples of the invention, the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

1. A method for magnifying text associated with a link in a magnifieddisplay while retaining browser functionality in the magnified display,comprising: presenting an original document in a first display in abrowser on a client; generating a magnified display of the originaldocument in memory at the client to form a magnified version of theoriginal document, wherein generating the magnified display of the firstdocument comprises: creating a magnifier window with an expanded field,wherein the magnifier window has a magnified display space based on amagnification factor; reading pixels from video memory for the selectedportion of the magnified display in a normal display space for the firstdocument; and populating pixels in the magnifier window to form amagnified display, wherein for each pixel of the normal display space,adjacent pixels are populated based on the magnification factor;receiving a selection of a portion of the magnified display of theoriginal document to form a selected portion of the magnified display;displaying, in the magnifier window in the first display, the selectedportion of the magnified display, wherein the magnifier window is asecond display that is displayed within the first display; mapping theselected portion of the magnified display in the magnifier window to adisplay space of the selected portion of the first document, wherein themagnifier window retains full browser functionality for the selectedportion of the magnified display, wherein mapping the magnified displayto the display space comprises: mapping the magnified display space forthe selected portion of the magnified display to corresponding pixels inthe normal display space for the first document, wherein the selectedportion of the magnified display in the second display is mapped to theoriginal document to form an imagemap, wherein the imagemap is separatedinto areas, and wherein the areas are used to select optionscorresponding to the original document; and mapping mouse eventsoccurring in the magnified display to corresponding coordinates in thenormal display space associated with the first document in the firstdisplay; responsive to receiving a selection of a link within theselected portion of the magnified display in the second display,retrieving a second document corresponding to the link and displayingthe second document in the first display; and responsive to receiving aselection of a portion of text within the selected portion of themagnified display in the second display to be copied and pasted into athird document associated with a different application, copying theportion of the text selected within the selected portion of themagnified display and pasting the portion of the text into the thirddocument associated with the different application, wherein an actionwithin the selected portion of the magnified display in the seconddisplay results in performing an action with respect to the originaldocument.